8.4 编辑隧道应用
Path: /api/v1/resource/updateResource
Method: POST
接口描述:
- 对于
ext
和openModel
参数,暂不支持增量修改。ext
或openModel
参数可不传,但若需要传递ext
或openModel
参数,须完整传递ext
或openModel
下的所有字段。进行ext
或openModel
字段修改时,请先调用查询应用详情接口/api/v1/resource/queryResource
获取完整的ext
- 对于除
ext
和openModel
参数之外的更新接口中的其他非必须参数,如果不传,不会对该条数据相对应参数进行修改 - 桌面云应用,全网泛域名应用请使用控制台修改
请求参数
Headers
参数名称 | 参数值 | 是否必须 | 示例 | 备注 |
---|---|---|---|---|
Content-Type | application/json | 是 |
Body
名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
---|---|---|---|---|---|
id | string | 非必须 | ID | 应用ID和应用名称至少传一个,用于查找到对应的应用。应用ID可通过查询应用列表接口搜索到 | |
name | string | 必须 | 应用名称 | 同时传ID和名称时,查找应用以ID为准,并会修改该ID对应应用的名称。只传名称时,查找应用以名称为准,此时无法修改应用的名称 | |
nodeGroupId | string | 非必须 | 节点区域id, 应用所属节点区域的id | 综合网关无需填写 | |
nodeGroupName | string | 非必须 | 节点区域名称, 应用所属节点区域的名称, nodeGroupId 与 nodeGroupName 同时传输时 nodeGroupName 不生效 | 综合网关无需填写 | |
subModel | string | 非必须 | 子访问模式,TCP/UDP协议:L3VPN,HTTP/HTTPS协议:TUN2WEB | mock:L3VPN | |
description | string | 非必须 | 描述 | ||
groupId | string | 非必须 | 所属应用分类ID | 可通过应用分类查询接口获取ID | |
groupName | string | 非必须 | 所属应用分类名称, groupId 与 groupName 同时传输时 groupName 不生效 | ||
status | number | 非必须 | 启用状态,0禁用,1启用 | mock: 1 | |
iconId | string | 非必须 | 预置的图标ID,"1"~"31"可供选择 | 自定义图标设置建议在控制台中配置 | |
allowApply | number | 非必须 | 允许用户自助申请此应用,0不允许,1允许 | ||
applyForInfo | object | 非必须 | 用户申请信息(修改需要传全量结构) | ||
├─ content | string | 非必须 | 告警内容 | ||
├─ accessReason | string[] | 非必须 | 申请理由 | ||
accessAddress | string | 非必须 | 应用访问入口地址 | mock: https://test.com | |
addressList | object[] | 非必须 | 服务器地址配置 | ||
├─ protocol | string | 非必须 | 协议,tcp, udp, all, icmp | ||
├─ host | string | 非必须 | 服务器地址 | mock: 1.1.1.1 | |
├─ port | string | 非必须 | 端口, 协议为ICMP时请传0 | mock: 80 | |
excludeAddressList | object[] | 非必须 | 排除地址列表 | 仅适用于2.2.10及以上版本 | |
├─ host | string | 非必须 | 排除地址 | mock: 1.1.1.1 | |
├─ port | string | 非必须 | 排除端口 | mock: 80 | |
├─ protocol | string | 非必须 | 协议,tcp, udp, all, icmp | ||
excludeAddress | object | 非必须 | 排除地址配置 | 仅适用于2.2.10 SP2及以上版本(2.2.12除外) | |
├─ status | number | 非必须 | 是否启用应用排除地址, 0:禁用,1:启用 | ||
├─ excludeAddressList | object[] | 非必须 | 排除地址列表 | ||
├─├─ host | string | 非必须 | 排除地址 | mock: 1.1.1.1 | |
├─├─ port | string | 非必须 | 排除端口 | mock: 80 | |
├─├─ protocol | string | 非必须 | 协议,tcp, udp, all, icmp | ||
trustedCertId | string | 非必须 | 授信证书ID,可以根据证书ID或者名称进行指定,子访问模式为TUN2WEB时需要,默认内置web应用证书ID为"default" | ||
trustedCertName | string | 非必须 | 授信证书名称, trustedCertId 与 trustedCertName 同时传输时 trustedCertName 不生效 | ||
ext | object | 非必须 | 扩展字段 | ||
├─ hide | number | 非必须 | 在用户应用中心隐藏,0不隐藏,1隐藏 | ||
├─ enableTCPPrefL3 | bool | 非必须 | TCP协议优先走长隧道,true启用,false 不启用 | 默认不启用 | |
├─ addrPretend | bool | 非必须 | 解析地址伪装(Fake IP),true启用,false 不启用 | 默认启用 | |
├─ openModel | object | 非必须 | 打开方式(仅用于配置windows平台的浏览器打开方式) | 2.3.10版本后不建议再使用该字段,请使用后文所述的openModel字段。如果两者共存,以后文的openModel配置为准 | |
├─├─ model | string | 非必须 | no | 方式,有如下几种值: 1. no(无打开方式) 2. default-browser(默认浏览器) 3. custom-browser(自定义浏览器) |
mock: no |
├─├─ programName | string | 非必须 | 程序名称,如果model填写的custom-browser时,则此项需要填写, 参考 《附录1:打开方式中浏览器信息对应表-Windows》 中的 programName 列 | ||
├─├─ processName | string | 非必须 | 进程名,如果填写了programName,则需要填写此项,每种浏览器对应的进程名参考 《附录1:打开方式中浏览器信息对应表-Windows》 中的 processName 列 | ||
├─├─ issuerName | array | 非必须 | 签名者名称,如果填写了programName,则需要填写此项,每种浏览器对应的签名者名称参考 《附录1:打开方式中浏览器信息对应表-Windows》 中的 issuerName 列 | ||
├─├─ originalFilename | string | 非必须 | 原始文件名,如果填写了programName,则需要填写此项,每种浏览器对应的原始文件名参考 《附录1:打开方式中浏览器信息对应表-Windows》 中的 originalFilename 列 | ||
├─├─ useDefaultBrowser | number | 非必须 | 允许在未找到该浏览器时自动打开默认浏览器,0不允许,1允许 | ||
ssoConfig | object | 非必须 | 单点登录配置, 不建议通过openAPI进行配置 | ||
├─ enable | boolean | 非必须 | 不建议通过openAPI进行配置,请直接传false | mock: false | |
openModel | object | 非必须 | 打开方式(新版,适用于2.3.10之后的版本) | 定义用户在工作台点击应用时的效果 | |
├─ enabled | number | 非必须 | 是否启用打开方式,0为不启用,1为启用 | ||
├─ platform | object | 非必须 | 不同平台的打开方式 | ||
├─├─ windows | object | 非必须 | Windows平台的打开方式 | 不传时,用户在客户端工作台点击应用将提示“未配置打开方式” | |
├─├─├─ model | string | 非必须 | no | 方式,有如下几种值: 1. no(无打开方式) 2. default-browser(默认浏览器) 3. custom-browser(自定义浏览器) 4. specified-program(指定程序) 5. sys-program(系统应用) |
mock: no |
├─├─├─ browser | object | 非必须 | 打开方式为"default-browser"或"custom-browser"时的详细配置 | ||
├─├─├─├─ programName | string | 非必须 | 程序名称,如果model填写的custom-browser时,则此项需要填写, 参考 《附录1:打开方式中浏览器信息对应表-Windows》 中的 programName 列 | ||
├─├─├─├─ processName | string | 非必须 | 进程名,如果填写了programName,则需要填写此项,每种浏览器对应的进程名参考 《附录1:打开方式中浏览器信息对应表-Windows》 中的 processName 列 | ||
├─├─├─├─ issuerName | string | 非必须 | 签名者名称,如果填写了programName,则需要填写此项,每种浏览器对应的签名者名称参考 《附录1:打开方式中浏览器信息对应表-Windows》 中的 issuerName 列 | ||
├─├─├─├─ originalFilename | string | 非必须 | 原始文件名,如果填写了programName,则需要填写此项,每种浏览器对应的原始文件名参考 《附录1:打开方式中浏览器信息对应表-Windows》 中的 originalFilename 列 | ||
├─├─├─├─ useDefaultBrowser | number | 非必须 | 允许在未找到该浏览器时自动打开默认浏览器,0不允许,1允许 | ||
├─├─├─├─ enableExecArgs | number | 非必须 | 是否在打开时携带额外启动参数 | 仅当model为"custom-browser"时有效 | |
├─├─├─├─ execArgs | string[] | 非必须 | 额外启动参数列表 | ||
├─├─├─├─ hint | object | 非必须 | 未找到浏览器时的提示语 | 仅当useDefaultBrowser为0时才会显示提示语 | |
├─├─├─├─├─ zh-cn | string | 非必须 | 中文提示语 | ||
├─├─├─├─├─ en-us | string | 非必须 | 英文提示语 | ||
├─├─├─ specifiedProgram | object | 非必须 | 打开方式为"specified-program"时的详细配置(指定程序打开) | ||
├─├─├─├─ programName | string | 非必须 | 程序名称 | ||
├─├─├─├─ programPath | string | 非必须 | 程序路径 | ||
├─├─├─├─ enableExecArgs | number | 非必须 | 是否在打开时携带额外启动参数 | ||
├─├─├─├─ execArgs | string[] | 非必须 | 额外启动参数列表 | ||
├─├─├─├─ allowOtherProgram | number | 非必须 | 是否允许终端用户选择其他程序,0不允许,1允许 | ||
├─├─├─├─ hint | object | 非必须 | 未找到程序时的提示语 | 子对象结构和字段定义与browser子对象的hint字段完全相同,以下省略 | |
├─├─├─ sysProgram | object | 非必须 | 打开方式为"sys-program"时的详细配置(使用系统应用打开) | ||
├─├─├─├─ programName | string | 非必须 | 程序名称。支持的名称见《附录4:打开方式支持的系统应用名称表-Windows》 | ||
├─├─├─├─ enableExecArgs | number | 非必须 | 是否在打开时携带额外启动参数 | ||
├─├─├─├─ execArgs | string[] | 非必须 | 额外启动参数列表 | ||
├─├─ mac | object | 非必须 | MacOS平台的打开方式 | 除了model不支持为"sys-program",以及model为"specified-program"时不支持programPath字段外,其子对象结构和字段定义与Windows平台的打开方式完全相同,以下省略。不传时,用户在客户端工作台点击应用将提示“未配置打开方式” | |
├─├─ linux | object | 非必须 | Linux平台的打开方式 | 不传时,用户在客户端工作台点击应用将提示“未配置打开方式” | |
├─├─├─ model | string | 非必须 | no | 方式,有如下几种值: 1. no(无打开方式) 2. default-browser(默认浏览器) 3. custom-browser(自定义浏览器) 4. specified-program(指定程序) |
mock: no |
├─├─├─ browser | object | 非必须 | 打开方式为"default-browser"或"custom-browser"时的详细配置 | ||
├─├─├─├─ useDefaultBrowser | number | 非必须 | 允许在未找到该浏览器时自动打开默认浏览器,0不允许,1允许 | ||
├─├─├─├─ hint | object | 非必须 | 未找到浏览器时的提示语 | 仅当useDefaultBrowser为0时才会显示提示语。子对象结构和字段定义与Windows平台的hint字段完全相同,以下省略 | |
├─├─├─├─ uos | object | 非必须 | UOS子平台的浏览器打开方式配置 | ||
├─├─├─├─├─ programName | string | 非必须 | 程序名称,如果model填写的custom-browser时,则此项需要填写, 参考 《附录3:打开方式中浏览器信息对应表-Linux》 中的 programName 列 | ||
├─├─├─├─├─ processName | string | 非必须 | 进程名,如果填写了programName,则需要填写此项,每种浏览器对应的进程名参考 《附录3:打开方式中浏览器信息对应表-Linux》 中的 processName 列 | ||
├─├─├─├─ kylin | object | 非必须 | 麒麟子平台的浏览器打开方式配置 | 子对象结构和字段定义与UOS子平台完全相同,以下省略 | |
├─├─├─├─ ubuntu | object | 非必须 | Ubuntu子平台的浏览器打开方式配置 | 子对象结构和字段定义与UOS子平台完全相同,以下省略 | |
├─├─├─ specifiedProgram | object | 非必须 | 打开方式为"specified-program"时的详细配置(指定程序打开) | 除了不支持programPath字段,以及不支持配置额外启动参数外,其子对象结构和字段定义与Windows平台的specifiedProgram字段完全相同,以下省略 |
请求示例1-修改描述以及节点区域
{
"name": "[RDP]张三的windows桌面",
"description": "简单的描述",
"nodeGroupName": "新的节点区域名称"
}
请求示例2-修改应用名称
{
"id": "162a5d3c-2266-4643-9c50-c5e619fa7e6e",
"name": "修改后的应用名称",
}
返回数据
名称 | 类型 | 是否必须 | 默认值 | 备注 | 其他信息 |
---|---|---|---|---|---|
code | number | 必须 | 错误码 | ||
data | object | 必须 | 数据字段 | ||
msg | string | 必须 | 描述信息 |
错误信息
错误提示 | 错误码 |
---|---|
参数检查出错 | 10000001 |
WEB全网应用特性已%s,当前操作不允许执行,请刷新后重试 | 10000001 |
subModel 与 accessModel 不匹配,需要是 %s 之一 | 10000001 |
一个服务器地址只能对应一个访问地址,请先禁用或删除已存在的应用,再匹配新的服务器地址或访问地址 | 77200010 |
主站点前端地址或别名与依赖站点前端地址或别名冲突 | 10000001 |
依赖站点(%s)同时存在当前应用和应用(%s)配置中,为避免冲突建议将此子站点配置为独立应用 | 77200010 |
保存失败,应用单点登录配置有误 | 10000001 |
前端地址别名必须是url格式,如:https://192.168.1.1:443 | 77200010 |
前端访问地址不能为空 | 10000001 |
前端访问地址与客户端接入地址冲突 | 77200018 |
前端访问地址端口与证书认证端口冲突 | 77200018 |
单个主站点的依赖站点数量超过最大个数限制 | 10000001 |
单点登录设置中界面控件名称存在冲突 | 10000001 |
名称不能为空 | 10000001 |
地址列表超过最大个数限制 | 10000001 |
地址格式非法,开启域名排除地址特性时,隧道泛域名服务器地址最多只能有1个 * 且只能出现在首位 | 10000001 |
应用分类不存在 | 77200001 |
应用名(%s)已存在 | 77200005 |
应用图标不存在,请检查应用图标ID | 10000001 |
应用地址:(%s)格式错误,请输入如:192.168.1.1,192.168.1.1/24,192.168.1.1-192.168.1.10,www.xxx.com | 77200010 |
应用总数已达上限,无法继续新增 | 77200007 |
当前保存的泛域名与数据库中的记录不匹配,请返回上一级再尝试编辑 | 10000001 |
当前未配置WEB全网应用,请先配置WEB全网应用 | 10000001 |
当只改写不监听前端地址时,必须有前端地址别名 | 10000001 |
所有的服务器地址均被排除 | 77200010 |
授信证书不能为空 | 10000001 |
排除后生成的服务器地址数为:%s 超过限制:%s! | 77200041 |
排除地址 %s %s:%s 范围大于服务器地址 | 77200040 |
排除地址 %s 不在已配置的服务器地址中 | 77200040 |
排除地址不能为域名 | 10000001 |
服务器地址必须是url格式,如:https://192.168.1.1:443 | 77200010 |
根据排除地址生成的应用地址数量超过限制 | 77200041 |
格式错误,请输入如:192.168.1.1,192.168.1.1/24,192.168.1.1-192.168.1.10,www.xxx.com | 77200010 |
格式错误,请输入如:443,1-65535 | 77200010 |
此主站点存在多个前端地址相同的依赖站点 | 77200010 |
此主站点存在重复的依赖站点 | 77200010 |
泛域名应用前端访问地址不允许包含'.' | 10000001 |
泛域名长度不能超过%s个字符,否则将无法同步更新泛域名应用 | 10000001 |
登录界面地址的协议、主机名及端口需与该应用后端服务器地址保持一致 | 10000001 |
端口(%s)格式错误,请输入如:443,1-65535 | 77200010 |
网络区域不存在 | 10000001 |
自定义请求头部改写地址必须为后端服务器地址或任一别名地址 | 10000001 |
节点区域不存在 | 77200001 |
访问地址别名必须是url格式,如:https://192.168.1.1:443 | 77200010 |
访问地址必须是url格式,如:https://192.168.1.1:443 | 77200010 |
访问理由不能为空 | 10000001 |
证书解析失败,强制导入后,将修改为内置web应用证书 | 10000001 |
该应用的依赖站点(%s)和其他应用的前端地址存在冲突 | 77200010 |
该应用的依赖站点(%s)和应用(%s)的前端地址存在冲突 | 77200010 |
该应用的前端访问地址与依赖站点地址存在冲突 | 77200010 |
该应用的前端访问地址与应用(%s)的依赖站点存在冲突 | 77200010 |
该应用的后端访问地址与依赖站点地址存在冲突 | 77200010 |
选择的授信证书不存在 | 10000001 |
隧道应用排除地址范围大于应用地址 | 77200040 |
隧道应用服务器地址非法 | 10000001 |
附录1:打开方式中浏览器信息对应表-Windows
浏览器名称(programName) | 进程名(processName) | 签名者名称(issuerName) | 原始文件名(originalFilename) | 备注 | 其他信息 |
---|---|---|---|---|---|
Google Chrome(谷歌浏览器) | chrome.exe | Google LLC | chrome.exe | ||
Internet Explorer(IE浏览器) | iexplore.exe | Microsoft Corporation | IEXPLORE.EXE | ||
360安全浏览器 | 360se.exe | Beijing Qihu Technology Co., Ltd. | 360se.exe | ||
360极速浏览器 | 360chrome.exe | Beijing Qihu Technology Co., Ltd. | 360chrome.exe | ||
Firefox(火狐浏览器) | firefox.exe | Mozilla Corporation | firefox.exe | ||
Microsoft Edge | msedge.exe | Microsoft Corporation | msedge.exe | ||
QQ浏览器 | QQBrowser.exe | Tencent Technology(Shenzhen) Company Limited | QQBrowser.exe | ||
搜狗浏览器 | SogouExplorer.exe | Beijing Sogou Technology Development Co., Ltd. | 该浏览器不存在原始文件名 |
附录2:打开方式中浏览器信息对应表-MacOS
浏览器名称(programName) | 进程名(processName) | 签名者名称(issuerName) | 原始文件名(originalFilename) | 备注 | 其他信息 |
---|---|---|---|---|---|
谷歌浏览器 | Google Chrome.app | Google LLC | Google Chrome.app | ||
Safari | Safari.app | Apple Code Signing Certification Authority | Safari.app | ||
火狐浏览器 | Firefox.app | Mozilla Corporation | Firefox.app | ||
360浏览器 | 360Chrome.app | Beijing Qihoo Technology Co Ltd | 360Chrome.app | ||
Microsoft Edge | Microsoft Edge.app | Microsoft Corporation | Microsoft Edge.app | ||
QQ浏览器 | QQBrowser.app | Tencent Technology (Shenzhen) Company Limited | QQBrowser.app | ||
Opera浏览器 | Opera.app | Opera Software AS | Opera.app |
附录3:打开方式中浏览器信息对应列表-Linux
浏览器名称(programName) | 进程名(processName) | 备注 | 其他信息 |
---|---|---|---|
UOS浏览器 | 浏览器 | 仅支持UOS子平台 | |
火狐浏览器 | Firefox 网络浏览器 | ||
龙芯浏览器 | 龙芯浏览器 | 不支持Ubuntu子平台 | |
奇安信浏览器 | 奇安信可信浏览器 | ||
360浏览器 | 360安全浏览器 | ||
谷歌浏览器 | Google Chrome | ||
红莲花浏览器 | 红莲花安全浏览器 |
附录4:打开方式支持的系统应用名称表-Windows
程序名称(programName) | 代表的实际程序 | 备注 | 其他信息 |
---|---|---|---|
remoteDesktop | 远程桌面 | ||
file | 文件资源管理器 |